
package com.platform.modules.mall.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.platform.modules.mall.entity.dto.ActivityDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 日常活动实体
 *
 * @author
 * @date 2021-08-11 16:21:47
 */
@Data
@TableName("MALL_ACTIVITY")
public class MallActivityEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     *
     */
    @TableId
    private String id;
    /**
     * 名称
     */
    @ApiModelProperty(value = "名称")
    private String name;
    /**
     * 新增时间
     */
    @ApiModelProperty(value = "新增时间")
    private Date addTime;
    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    private Date updateTime;
    /**
     * 删除状态0否1是
     */
    @ApiModelProperty(value = "删除状态0否1是")
    private Integer isDelete;
    /**
     * 是否展示，0否1是
     */
    @ApiModelProperty(value = "是否展示，0否1是")
    private Integer isShow;
    /**
     * 活动日期，最多3个时间段，
     */
    @ApiModelProperty(value = "活动日期，最多3个时间段，")
    private String activityDate;
    /**
     * 活动具体时间，最多3个时间段
     */
    @ApiModelProperty(value = "活动具体时间，最多3个时间段")
    private String activityTime;

    @ApiModelProperty(value = "活动链接url")
    private String url;
    /**
     * 微信优惠标识
     */
    @ApiModelProperty(value = "微信优惠标识")
    private String goodsTag;
    /**
     * 活动规则
     */
    @ApiModelProperty(value = "活动规则")
    private String strategy;
    /**
     * 白名单类型
     */
    @ApiModelProperty(value = "白名单类型")
    private Integer whitelistType;
    /**
     * 简明介绍
     */
    @ApiModelProperty(value = "简明介绍")
    private String brief;
    /**
     * 扩展字段
     */
    @ApiModelProperty(value = "扩展字段")
    private String extend1;
    /**
     * 扩展字段
     */
    @ApiModelProperty(value = "扩展字段")
    private String extend2;

    @ApiModelProperty(value = "活动数组")
    @TableField(exist = false)
    private List<ActivityDto> activityList;

    @ApiModelProperty(value = "购买状态，0未开始，1进行中，2已结束")
    @TableField(exist = false)
    private Integer buyStatus;

    @ApiModelProperty(value = "活动标识")
    private String activityCode;
    @ApiModelProperty(value = "白名单类型")
    private Integer activityType;
    @ApiModelProperty(value = "白名单限制方式")
    private Integer whitelistConfine;
    @ApiModelProperty(value = "活动单独配置信息")
    private String config;

    /**
     * 0 免费
     * 1 付费
     */
    @ApiModelProperty(value = "是否需要付费")
    private Integer needToPay;
}
